/*
-----------------------------------------------------------------------------
This source file is part of Labor3D
(Labor 3D Graphics Engine)

Copyright (c) 2009-2020 Rock Mao
* creator : Rock Mao
* created : 2009-10-26   10:39
* filename: LaborD3D10GeometryShader.h
-----------------------------------------------------------------------------
*/

#ifndef __LABORD3D10GEOMETRYSHADER_H__
#define __LABORD3D10GEOMETRYSHADER_H__
#include "LaborCoreDef.h"
#include "LaborD3D10Shader.h"

NAMESPACE_LABOR3D_BEGIN

class CLD3D10GeometryShader : public CLD3D10Shader
{
public:
	ID3D10GeometryShader* m_pGeometryShader;
public:
	CLD3D10GeometryShader();
	~CLD3D10GeometryShader();

	bool          installShaderConstTable(ILShaderParameters* pShaderParamBuffer);
	bool          _load(const wchar_t* fileName ,const unsigned char* buf , size_t bufLen, unsigned long arg);
	bool          isLoaded();
	bool          unload();
public:
	eLShaderType  type(){return el_ST_GeometryShader ; }
};

NAMESPACE_LABOR3D_END
#endif // __LABORD3D10GEOMETRYSHADER_H__